Copyright: helpC, (c) Copyright 1992,94 HyperAct, Inc.


3dTerp - The PASTERP based 3d interpreter

3dTerp is a combination of two HyperAct, Inc. products - PASTERP - The pascal-like interpreter, and 3dLib - a 3D library for Pascal.

PASTERP is a script language modeled after the Pascal language, but with language enhancements to make it easier and safer to use by end- users, and with an open architecture that allows applications to include a version of PASTERP that is modified to provide application specific functionality.

3dTerp is a simple PASTERP application that includes 3d functions built in, to allow the user to write 3D animation scripts. The 3D routines used in 3dTerp are based on HyperAct, Inc 3dLib - a 3D library that was built to provide fast and easy 3D routines.

This tool can be used as a programming learning tool, simple 3D education tool or just plain fun!

The price is right - 3dTerp is free to use. The only restrictions that are applied to the tool's distribution is that it can not be sold separatly (It can be distributed as part of a Shareware or freeware collection), and that all the files that are described in the File List section are included.

Related Topics :

 Setup - Installing 3dTerp

 A Quick Look at 3dTerp operation

 Contact information

 Warranty

 File List - The files in the 3dTerp package

 3D Library routines


Setup - Installing 3dTerp

Simply copy the files that are included in the package and described in the File List section to a working directory of your choice.

Related Topics :

 A Quick Look at 3dTerp operation

 File List - The files in the 3dTerp package

 3dTerp - The PASTERP based 3d interpreter


A Quick Look at 3dTerp operation

The 3dTerp interpreter executable file is 3dTerp.exe.

You activate this file with the name of the animation script file as the first parameter.

Assuming that you want to try the 3D Box moving demo animation script included in the file box3mv.trp, you will enter

3dterp box3mv

from the command line. The box3mv animation script will be read and interpreted by the 3dTerp program.

To create animation scripts by yourself, you will need to do the following things :

Create a simple ascii text file with an extension ".trp", with an ascii text editor of your choice. The Dos Edit editor or Turbo Pascal IDE are good examples of such editors.

The animation script must contain a procedure called "main", this is the procedure that is executed by the 3dTerp program after the script is read to memory.

The code you write in the main procedure (and optional other procedures) is PASTERP code. PASTERP is a simple language modeled after the Pascal language. If you are a seasoned Pascal programmer and would like to get your feet wet as soon as possible, we suggest that you inspect some of the *.TRP scripts provided with the 3dTerp package, execute them using the 3dTerp program, and experiment with the PASTERP language by changing the code in these modules to create new animation patterns.

The PASTERP language is defined in the PASTERP.DOC file included with this package. The PASTERP.DOC file documents the standard and extended PASTERP libraries.

The 3D extensions to PASTERP that were added to 3dTerp are described in the "3D Library routines" section below.

Related Topics :

 PASTERP Language Reference

 3D Library routines


Contact information

Contact

        HyperAct, Inc.

        P.O.Box 5517

        Coralville IA 52241

        U.S.A

        E-Mail      : Compuserve - 76350,333

        Phone/Fax   : (319) 351-8413

To contact the author directly please write to :

        E-Mail      : Compuserve - 100274,162

                      Internet - rloewy@panix.com

Related Topics :

 3dTerp - The PASTERP based 3d interpreter

 Warranty


Warranty

There is no warranty what so ever, The package is supplied as is,

The distributor (HyperAct, Inc.), or the author (Loewy Ron), are not,

and will not be responsible for any damages, lost profits,

or inconveniences caused by the use, or inability to use this package.

The use of the program is at your own risk.

By using (or attempting to use) the package you agree to this.

Related Topics :

 3dTerp - The PASTERP based 3d interpreter

 Contact information


File List - The files in the 3dTerp package

The following files are included with the 3dTerp package :

3dterp.exe      - The 3d interpreter program

3dterp.txt      - The 3dTerp documentation in text format.

3dterp.hlp      - The 3dTerp documentation in WinHelp format.

pasterp.txt     - The PASTERP documentation in text format.

pasterp.hlp     - The PASTERP documentation in WinHelp format.

box3mv.trp      - 3dTerp demo script.

box3mv2.trp     - 3dTerp demo script.

r2d2.trp        - 3dTerp demo script.

integv.trp      - 3dTerp demo script.

box.3d2         - a 3D box object.

pyr.3d2         - a 3D pyramide object.

prop.3d2        - a 3D prop object.

3do.exe         - 3D object compiler.

3do.txt         - 3D object compiler documentation.


3D Library routines

The 3dTerp program adds several procedures and functions to the PASTERP library, that allow you to load, display, and manipulate 3D objects.

The 3D specific functions and procedures are :

 procedure move3dObject

 procedure move3dObjectTo

 procedure paint3dObject

 procdeure position3dObject

 procedure rotate3dObject

 procedure scale3dObject

 procedure setColor

 procedure setPerspective

 procedure load3dObject


procedure load3dObject

procedure load3dObject(objName : string, objFile : string, color : byte);

This procedure loads a 3d object from a disk file, and associates a name to it. This name will later be used in functions that display and manipulate the 3d object.

Parameters

objName - This is the name that is associated to the object.

objFile - The Dos path to the object file.

color - The initial color of the object.


procedure setColor

procedure setColor(color : byte);

This procedure is used to set the color the object will be painted in.

Parameters

color - This is the color that will be used. The following values are allowed :

  Black         = 0

  Blue          = 1

  Green         = 2

  Cyan          = 3

  Red           = 4

  Magenta       = 5

  Brown         = 6

  LightGray     = 7

  DarkGray      = 8

  LightBlue     = 9

  LightGreen    = 10

  LightCyan     = 11

  LightRed      = 12

  LightMagenta  = 13

  Yellow        = 14

  White         = 15


procedure paint3dObject

procedure paint3dObject(objName : string);

The paint3dObject is used to display the object on the screen in it's current color, position, scale and rotation attributes.

Parameters

objName - This is the name that is associated to the object.


procedure rotate3dObject

procedure rotate3dObject(objName : string, axis : string, deg : real);

This routine is used to rotate the object around a specified axis, by specified degrees.

Parameters

objName - This is the name that is associated to the object.

axis - This is the axis the object will be rotated around, allowed values are "X", "Y" and "Z".

deg - The degrees amount to rotate the object.


procedure move3dObject

procedure move3dObject(objName : string, axis : string, by : real);

This procedure is used to move an object along a specified axis.

Parameters

objName - This is the name that is associated to the object.

axis - This is the axis the object will be moved along, allowed values are "X", "Y" and "Z".

by - The amount of space units the object will be moved.


procedure scale3dObject

procedure scale3dObject(objName : string, axis : string, scale : real);

This procedure is used to scale an object around a specified axis.

Related Topics

objName - This is the name that is associated to the object.

axis - This is the axis the object will be rotated around, allowed values are "X", "Y" and "Z".

scale - This is the scale the object will be changed by, if you want the object to be 125% of it's original size, use the value 1.25.


procedure move3dObjectTo

procedure move3dObjectTo(objName : string, x : real, y : real, z : real);

This procedure moves the object's center of gravity to a specified point in space.

Parameters

objName - This is the name that is associated to the object.

x, y, z - These are the coordinates the object's center of gravity will be moved to.


procdeure position3dObject

procedure position3dObject(objName : string, var x : real, var y : real, var z : real);

This procedure is used to find out the current center of gravity coordinates of the object.

Parameters

objName - This is the name that is associated to the object.

x, y, z - These variable will be set to the object's center of gravity coordinates.


procedure setPerspective

procedure setPerspective(perspective : boolean);

This procedure is used to define the draw mode - Perspective or standard.

Parameters

perspective - This parameters sets the display mode to Perspective or standard, Allowed values are true for Perspective, flase otherwise.